import request from '@/utils/request'

/**
 * 获取所有角色列表
 * @param {*} page 页码
 * @param {*} pagesize 每页的条数
 * @returns
 */
export const getRoleList = (page = 1, pagesize = 5) => {
  return request({
    method: 'get',
    url: '/sys/role',
    params: {
      page,
      pagesize
    }
  })
}

/**
 * 根据id删除角色
 * @param {*} id id
 * @returns
 */
export const delRole = (id) => {
  return request({
    method: 'delete',
    url: '/sys/role/' + id
  })
}

/**
 * 添加角色
 * @param {*} data 表单数据
 * @returns
 */
export const addRole = (data) => {
  return request({
    method: 'post',
    url: '/sys/role',
    data
  })
}

/**
 * 根据id获取角色详情
 * @param {*} id id
 * @returns
 */
export const getRoleDetail = (id) => {
  return request({
    method: 'get',
    url: '/sys/role/' + id
  })
}

/**
 * 根据id修改角色
 * @param {*} data 提交表单需要的数据 name description
 * @returns
 */
export const updateRole = (data) => {
  return request({
    method: 'PUT',
    url: '/sys/role/' + data.id,
    data
  })
}

/**
 * 根据id获取公司信息
 * @param {*} id id
 * @returns
 */
export const getCompanyById = (id) => {
  return request({
    method: 'get',
    url: '/company/' + id
  })
}

/**
 * 根据id给角色分配权限
 * @param {*} id 角色id
 * @param {*} permIds 角色的权限数组，数组里面是字符串
 * @returns
 */
export const assignPerm = (id, permIds) => {
  return request({
    method: 'put',
    url: '/sys/role/assignPrem',
    data: {
      id,
      permIds
    }
  })
}
